package lanQiaoBei.数学知识.约数;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;

/*约数之和
给定 n 个正整数 ai，请你输出这些数的乘积的约数之和，答案对 109+7 取模。

输入格式

第一行包含整数 n。

接下来 n 行，每行包含一个整数 ai。

输出格式

输出一个整数，表示所给正整数的乘积的约数之和，答案需对 109+7 取模。

数据范围

1≤n≤100,
1≤ai≤2×1e9

输入样例：

3
2
6
8

输出样例：

252
————————————————
* */
public class P3 {
    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    final static int N=110;
    static int res=1;
    static void scan()throws Exception{

    }
    public static void main(String[]args)throws Exception {
           int n=Integer.parseInt(br.readLine());
           Map<Integer,Integer>map=new HashMap();
           while(n-->0){
               int x=Integer.parseInt(br.readLine());
               for(int i=2;i<=x/i;i++){
                   if(x%i==0){
                       int s=0;
                       while(x%i==0){
                           x/=i;
                           s++;
                       }
                       map.merge(i,s,Integer::sum);
                   }
               }
               if(x>1)map.merge(x,1,Integer::sum);
           }
           map.forEach((k,v)->{//A=p1kn*p2^kn*p3^kn... 的约数之和=(p1^k1+p1^k2+...+p1^kn)*(p2^k1+p2^k2+...+p2^kn)*(p3^k1+p3^k2+...+p3^kn)...
               int s=1;
               while(v-->0)s=s*k+1;
               res=res*s%(int)1e7;
           });
           System.out.print(res);
    }
}
